#!/usr/bin/env python3
'''
Copyright (C) 2024, WAFW00F Developers.
See the LICENSE file for copying permission.
'''

# NOTE: this priority list is used so that each check can be prioritized,
# so that the quick checks are done first and ones that require more
# requests, are done later


wafdetectionsprio = [
    '360WangZhanBao (360 Technologies)',
    'ACE XML Gateway (Cisco)',
	'ASP.NET Generic (Microsoft)',
	'ASPA Firewall (ASPA Engineering Co.)',
	'AWS Elastic Load Balancer (Amazon)',
	'AireeCDN (Airee)',
	'Airlock (Phion/Ergon)',
	'Alert Logic (Alert Logic)',
	'AliYunDun (Alibaba Cloud Computing)',
	'AnYu (AnYu Technologies)',
	'Anquanbao (Anquanbao)',
	'AppWall (Radware)',
	'Approach (Approach)',
	'Armor Defense (Armor)',
	'ArvanCloud (ArvanCloud)',
	'Astra (Czar Securities)',
	'Azion Edge Firewall (Azion)',
	'Azure Application Gateway (Microsoft)',
	'Azure Front Door (Microsoft)',
	'BIG-IP AP Manager (F5 Networks)',
	'BIG-IP AppSec Manager (F5 Networks)',
	'BIG-IP Local Traffic Manager (F5 Networks)',
	'Barikode (Ethic Ninja)',
	'Barracuda (Barracuda Networks)',
	'Bekchy (Faydata Technologies Inc.)',
	'Beluga CDN (Beluga)',
	'BinarySec (BinarySec)',
	'BitNinja (BitNinja)',
	'BlockDoS (BlockDoS)',
	'Bluedon (Bluedon IST)',
	'BulletProof Security Pro (AITpro Security)',
	'CacheFly CDN (CacheFly)',
	'CacheWall (Varnish)',
	'CdnNS Application Gateway (CdnNs/WdidcNet)',
	'ChinaCache Load Balancer (ChinaCache)',
	'Chuang Yu Shield (Yunaq)',
	'Cloud Protector (Rohde & Schwarz CyberSecurity)',
	'Cloudbric (Penta Security)',
	'Cloudflare (Cloudflare Inc.)',
	'Cloudfloor (Cloudfloor DNS)',
	'Cloudfront (Amazon)',
	'Comodo cWatch (Comodo CyberSecurity)',
	'CrawlProtect (Jean-Denis Brun)',
	'DDoS-GUARD (DDOS-GUARD CORP.)',
	'DOSarrest (DOSarrest Internet Security)',
	'DataPower (IBM)',
	'DenyALL (Rohde & Schwarz CyberSecurity)',
	'Distil (Distil Networks)',
	'DotDefender (Applicure Technologies)',
	'DynamicWeb Injection Check (DynamicWeb)',
	'Edgecast (Verizon Digital Media)',
	'Eisoo Cloud Firewall (Eisoo)',
	'Envoy (EnvoyProxy)',
	'Expression Engine (EllisLab)',
	'Fastly (Fastly CDN)',
	'FirePass (F5 Networks)',
	'FortiGate (Fortinet)',
	'FortiGuard (Fortinet)',
	'FortiWeb (Fortinet)',
	'GoDaddy Website Protection (GoDaddy)',
	'Google Cloud App Armor (Google Cloud)',
	'Greywizard (Grey Wizard)',
	'Huawei Cloud Firewall (Huawei)',
	'HyperGuard (Art of Defense)',
	'ISA Server (Microsoft)',
	'Imunify360 (CloudLinux)',
	'Incapsula (Imperva Inc.)',
	'IndusGuard (Indusface)',
	'Instart DX (Instart Logic)',
	'Janusec Application Gateway (Janusec)',
	'Jiasule (Jiasule)',
	'KS-WAF (KnownSec)',
	'Kemp LoadMaster (Progress Software)',
	'KeyCDN (KeyCDN)',
	'Kona SiteDefender (Akamai)',
	'LimeLight CDN (LimeLight)',
	'LiteSpeed (LiteSpeed Technologies)',
	'Malcare (Inactiv)',
	'MaxCDN (MaxCDN)',
	'Mission Control Shield (Mission Control)',
	'ModSecurity (SpiderLabs)',
	'NAXSI (NBS Systems)',
	'NSFocus (NSFocus Global Inc.)',
	'Nemesida (PentestIt)',
	'NetContinuum (Barracuda Networks)',
	'NetScaler AppFirewall (Citrix Systems)',
	'NevisProxy (AdNovum)',
	'Newdefend (NewDefend)',
	'NexusGuard Firewall (NexusGuard)',
	'NinjaFirewall (NinTechNet)',
	'NullDDoS Protection (NullDDoS)',
	'OnMessage Shield (BlackBaud)',
	'Open-Resty Lua Nginx (FLOSS)',
	'Oracle Cloud (Oracle)',
	'PT Application Firewall (Positive Technologies)',
	'Palo Alto Next Gen Firewall (Palo Alto Networks)',
	'PentaWAF (Global Network Services)',
	'PerimeterX (PerimeterX)',
	'PowerCDN (PowerCDN)',
	'Profense (ArmorLogic)',
	'Puhui (Puhui)',
	'Qcloud (Tencent Cloud)',
	'Qiniu (Qiniu CDN)',
	'Qrator (Qrator)',
	'RSFirewall (RSJoomla!)',
	'RayWAF (WebRay Solutions)',
	'Reblaze (Reblaze)',
	'RequestValidationMode (Microsoft)',
	'SEnginx (Neusoft)',
	'Sabre Firewall (Sabre)',
	'Safe3 Web Firewall (Safe3)',
	'Safedog (SafeDog)',
	'Safeline (Chaitin Tech.)',
	'SecKing (SecKing)',
	'SecuPress WP Security (SecuPress)',
	'Secure Entry (United Security Providers)',
	'SecureSphere (Imperva Inc.)',
	'ServerDefender VP (Port80 Software)',
	'Shadow Daemon (Zecure)',
	'Shield Security (One Dollar Plugin)',
	'SiteGround (SiteGround)',
	'SiteGuard (Sakura Inc.)',
	'Sitelock (TrueShield)',
	'SonicWall (Dell)',
	'Squarespace (Squarespace)',
	'SquidProxy IDS (SquidProxy)',
	'StackPath (StackPath)',
	'Sucuri CloudProxy (Sucuri Inc.)',
	'Tencent Cloud Firewall (Tencent Technologies)',
	'Teros (Citrix Systems)',
	'Trafficshield (F5 Networks)',
	'TransIP Web Firewall (TransIP)',
	'UEWaf (UCloud)',
	'URLMaster SecurityCheck (iFinity/DotNetNuke)',
	'URLScan (Microsoft)',
	'UTM Web Protection (Sophos)',
	'Variti (Variti)',
	'Varnish (OWASP)',
	'Viettel (Cloudrity)',
	'VirusDie (VirusDie LLC)',
	'WP Cerber Security (Cerber Tech)',
	'WTS-WAF (WTS)',
	'Wallarm (Wallarm Inc.)',
	'WatchGuard (WatchGuard Technologies)',
	'WebARX (WebARX Security Solutions)',
	'WebKnight (AQTRONIX)',
	'WebLand (WebLand)',
	'WebSEAL (IBM)',
	'WebTotem (WebTotem)',
	'West263 CDN (West263CDN)',
	'Wordfence (Defiant)',
	'XLabs Security WAF (XLabs)',
	'Xuanwudun (Xuanwudun)',
	'YXLink (YxLink Technologies)',
	'Yundun (Yundun)',
	'Yunjiasu (Baidu Cloud Computing)',
	'Yunsuo (Yunsuo)',
	'ZScaler (Accenture)',
	'Zenedge (Zenedge)',
	'aeSecure (aeSecure)',
	'eEye SecureIIS (BeyondTrust)',
	'pkSecurity IDS (pkSec)',
	'wpmudev WAF (Incsub)'
]